package com.byapp.fast.modules.order.dto;

import com.fasterxml.jackson.annotation.JsonProperty;
import io.swagger.annotations.ApiModel;
import lombok.Data;
import lombok.NoArgsConstructor;

import javax.validation.constraints.Min;
import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;

@NoArgsConstructor
@Data
@ApiModel
public class OrderItemDTO {

    // eg：达伽马|达伽马 vs 巴拉纳|187
    @JsonProperty(value = "code_team_name")
    private String codeTeamName;

    /* 赛事ID */
    @NotEmpty(message = "赛事ID不能为空")
    @JsonProperty(value = "m_id")
    private String matchId;

    /* 赔率 */
    @NotEmpty(message = "赛事赔率不能为空")
    @JsonProperty(value = "odds")
    private String odds;

    /* 竞猜编码 3：胜、1：平、0：负 */
    @NotEmpty(message = "竞猜编码不能为空")
    @JsonProperty(value = "codes")
    private String codes;

    /* 盘口 */
    @JsonProperty(value = "let_ball", defaultValue = "0")
    private String handicap = "0";

    /* 竞猜类型 1：欧盘、3：亚盘*/
    @NotEmpty(message = "竞猜类型不能为空")
    @JsonProperty("buy_type")
    private String buyType;

    /* 玩法类型 10：半场、20：全场 */
    @NotEmpty(message = "玩法类型不能为空")
    @JsonProperty("p_type")
    private String playType;

    /* 玩法ID */
    @NotEmpty(message = "玩法ID不能为空")
    @JsonProperty(value = "p_id")
    private String playId;

    /* 竞猜金额 */
    @NotNull(message = "竞猜金额不能为空")
    @Min(message = "竞猜金额必须大于0", value = 1)
    @JsonProperty(value = "buy_money")
    private Double buyMoney;

    /* 是否滚球 0：是、1：否*/
    @NotNull(message = "是否滚球不能为空")
    @JsonProperty(value = "is_inplay")
    private Integer isInPlay;

}
